package array

import "sort"

func numFriendRequests(ages []int) int {
	ans := 0

	sort.Ints(ages)

	left := 0
	right := 0

	for _, agex := range ages {
		if agex < 15 {
			continue
		}

		// 左指针指向刚好满足条件的第一个
		for ages[left]*2 <= agex+14 {
			left++
		}

		// 右指针指向与agex相同，但是位于切片最后的索引
		for right+1 < len(ages) && ages[right+1] <= agex {
			right++
		}

		// 需要添加的就是left到right-1的个数
		// 有多少个agex，重复多少次
		ans += right - left
	}
	return ans

}
